﻿#ifndef LIBRETRO_CORE_OPTIONS_INTL_H__
#define LIBRETRO_CORE_OPTIONS_INTL_H__

#if defined(_MSC_VER) && (_MSC_VER >= 1500 && _MSC_VER < 1900)
/* https://support.microsoft.com/en-us/kb/980263 */
#pragma execution_character_set("utf-8")
#pragma warning(disable:4566)
#endif

#include <libretro.h>

/*
 ********************************
 * VERSION: 1.3
 ********************************
 *
 * - 1.3: Move translations to libretro_core_options_intl.h
 *        - libretro_core_options_intl.h includes BOM and utf-8
 *          fix for MSVC 2010-2013
 *        - Added HAVE_NO_LANGEXTRA flag to disable translations
 *          on platforms/compilers without BOM support
 * - 1.2: Use core options v1 interface when
 *        RETRO_ENVIRONMENT_GET_CORE_OPTIONS_VERSION is >= 1
 *        (previously required RETRO_ENVIRONMENT_GET_CORE_OPTIONS_VERSION == 1)
 * - 1.1: Support generation of core options v0 retro_core_option_value
 *        arrays containing options with a single value
 * - 1.0: First commit
*/

#ifdef __cplusplus
extern "C" {
#endif

/*
 ********************************
 * Core Option Definitions
 ********************************
*/

/* RETRO_LANGUAGE_JAPANESE */

/* RETRO_LANGUAGE_FRENCH */

/* RETRO_LANGUAGE_SPANISH */

/* RETRO_LANGUAGE_GERMAN */

/* RETRO_LANGUAGE_ITALIAN */

/* RETRO_LANGUAGE_DUTCH */

/* RETRO_LANGUAGE_PORTUGUESE_BRAZIL */

/* RETRO_LANGUAGE_PORTUGUESE_PORTUGAL */

/* RETRO_LANGUAGE_RUSSIAN */

/* RETRO_LANGUAGE_KOREAN */

/* RETRO_LANGUAGE_CHINESE_TRADITIONAL */

/* RETRO_LANGUAGE_CHINESE_SIMPLIFIED */

struct retro_core_option_v2_category option_cats_chs[] = {
   {
      "hacks",
      "仿真Hacks",
      "配置影响低级别性能和兼容性的处理器超频和仿真精度参数。"
   },
   { NULL, NULL, NULL },
};

struct retro_core_option_v2_definition option_defs_chs[] = {

   /* These variable names and possible values constitute an ABI with ZMZ (ZSNES Libretro player).
    * Changing "Show layer 1" is fine, but don't change "layer_1"/etc or the possible values ("Yes|No").
    * Adding more variables and rearranging them is safe. */

   {
      "snes9x_2005_region",
      "系统区域（需要重启）",
      NULL,
      "指定系统来自哪个区域。'PAL制式为50赫兹，NTSC制式为60赫兹。如果选择了不正确的区域，游戏将比正常情况下运行得更快或更慢。",
      NULL,
      NULL,
      {
         { "auto", "自动" },
         { "NTSC", NULL },
         { "PAL",  NULL },
         { NULL, NULL },
      },
      "auto"
   },
   {
      "snes9x_2005_frameskip",
      "跳帧",
      NULL,
      "跳过帧以避免音频缓冲区不足（爆裂）。以牺牲视觉平滑度为代价来提高性能。”自动“在前端建议时跳过帧。”手动”使用“帧跳过阈值（%）”设置。",
      NULL,
      NULL,
      {
         { "disabled", "禁用" },
         { "auto",     "自动" },
         { "manual",   "手动" },
         { NULL, NULL },
      },
      "disabled"
   },
   {
      "snes9x_2005_frameskip_threshold",
      "跳帧阈值（%）",
      NULL,
      "当“帧跳过”设置为“手动”时，指定音频缓冲区占用阈值（百分比），低于该阈值将跳过帧。较高的值会导致框架更频繁地掉落，从而降低破裂的风险。",
      NULL,
      NULL,
      {
         { "15", NULL },
         { "18", NULL },
         { "21", NULL },
         { "24", NULL },
         { "27", NULL },
         { "30", NULL },
         { "33", NULL },
         { "36", NULL },
         { "39", NULL },
         { "42", NULL },
         { "45", NULL },
         { "48", NULL },
         { "51", NULL },
         { "54", NULL },
         { "57", NULL },
         { "60", NULL },
         { NULL, NULL },
      },
      "33"
   },
#ifndef USE_BLARGG_APU
   {
      "snes9x_2005_low_pass_filter",
      "音频滤波器",
      NULL,
      "启用低通音频滤波器以软化高音伪影，并模仿原始SNES硬件的“低音”声音。",
      NULL,
      NULL,
      {
         { "disabled", "禁用" },
         { "enabled",  "启用" },
         { NULL, NULL },
      },
      "disabled"
   },
   {
      "snes9x_2005_low_pass_range",
      "音频滤波器电平",
      NULL,
      "指定低通音频滤波器的截止频率。较高的值会增加滤波器的感知“强度”，因为高频频谱的较宽范围会衰减。",
      NULL,
      NULL,
      {
         { "5",  "5%" },
         { "10", "10%" },
         { "15", "15%" },
         { "20", "20%" },
         { "25", "25%" },
         { "30", "30%" },
         { "35", "35%" },
         { "40", "40%" },
         { "45", "45%" },
         { "50", "50%" },
         { "55", "55%" },
         { "60", "60%" },
         { "65", "65%" },
         { "70", "70%" },
         { "75", "75%" },
         { "80", "80%" },
         { "85", "85%" },
         { "90", "90%" },
         { "95", "95%" },
         { NULL, NULL },
      },
      "60"
   },
#endif
   {
      "snes9x_2005_overclock_cycles",
      "减少减速 (需要重启)",
      NULL,
      "SNES的许多游戏由于主CPU不足而速度减慢。这个选项有助于以可能的错误为代价来缓解这种情况。兼容：减少速度减慢，但尽可能保持游戏兼容性。极限：尽可能减少减速，但会破坏更多的游戏。",
      NULL,
      "hacks",
      {
         { "disabled",   "禁用" },
         { "compatible", "兼容" },
         { "max",        "极限" },
         { NULL, NULL },
      },
      "disabled"
   },
   {
      "snes9x_2005_reduce_sprite_flicker",
      "减少闪烁",
      NULL,
      "增加可以在屏幕上同时绘制的精灵数量。减少游戏中的闪烁。",
      NULL,
      "hacks",
      {
         { "disabled", "禁用" },
         { "enabled",  "启用" },
         { NULL, NULL },
      },
      "disabled"
   },
   { NULL, NULL, NULL, NULL, NULL, NULL, {{0}}, NULL },
};

struct retro_core_options_v2 options_chs = {
   option_cats_chs,
   option_defs_chs
};

/* RETRO_LANGUAGE_ESPERANTO */

/* RETRO_LANGUAGE_POLISH */

/* RETRO_LANGUAGE_VIETNAMESE */

/* RETRO_LANGUAGE_ARABIC */

/* RETRO_LANGUAGE_GREEK */

/* RETRO_LANGUAGE_TURKISH */

/* RETRO_LANGUAGE_SLOVAK */

/* RETRO_LANGUAGE_PERSIAN */

/* RETRO_LANGUAGE_HEBREW */

/* RETRO_LANGUAGE_ASTURIAN */

#ifdef __cplusplus
}
#endif

#endif
